package offer;
///链表中倒数第k个结点
public class T14 {

   public class ListNode {
        int val;
        ListNode next = null;

        ListNode(int val) {
        this.val = val;
        }
    }
    public ListNode FindKthToTail(ListNode head,int k) {
         ListNode node = head;

         while (head!=null&&k>0) {
             head = head.next;
             k--;
         }
         if (k!=0) return null;
         while (head!=null){
             head = head.next;
             node = node.next;

         }
         return node;
    }
    public void test(){
        ListNode listNode1 = new  ListNode(1);
        ListNode listNode2 = new  ListNode(2);
        ListNode listNode3 = new  ListNode(3);
        ListNode listNode4 = new  ListNode(4);
        ListNode listNode5 = new  ListNode(5);
        listNode1.next=listNode2;
        listNode2.next=listNode3;
        listNode3.next=listNode4;
        listNode4.next=listNode5;
        ListNode listNode= FindKthToTail(listNode1,1);
        print(listNode);
    }
    public void print(ListNode listNode){
       if (listNode==null) return;;
       System.out.println(listNode.val);
       print(listNode.next);

    }
    public static void main ( String[] args) {

      new T14().test();

    }
}
